package com.zzw.dao;

import com.zzw.bean.Order;
import com.zzw.bean.OrderItem;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface OrderMapper {
    /*  // 新增订单
      int insertOrder(Order order);

      // 批量新增订单项
      int batchInsertOrderItems(List<OrderItem> items);

      // 更新订单状态
      int updateOrderStatus(@Param("id") Integer id, @Param("status") Integer status);

      // 根据ID查询订单
      Order selectOrderById(Integer id);

      // 根据订单号查询订单
      Order selectOrderByOrderNo(String orderNo);

      // 查询订单详情（包括订单项）
      Order selectOrderDetailById(Integer id);

      // 查询订单列表
      List<Order> selectOrderList(Map<String, Object> params);

      // 删除订单
      int deleteOrder(Integer id);

      // 删除订单项
      int deleteOrderItemsByOrderId(Integer orderId);

      // 更新订单项的已发货数量
      int updateOrderItemShippedQuantity(@Param("id") Integer id, @Param("shippedQuantity") Integer shippedQuantity);

      // 更新订单的已发货总数量
      int updateOrderShippedQuantity(@Param("id") Integer id, @Param("shippedQuantity") Integer shippedQuantity);

      // 根据ID查询订单项
      OrderItem selectOrderItemById(Integer id);*/
    Order selectOrderById(@Param("id") Long id);

    Order selectOrderByOrderNo(@Param("orderNo") String orderNo);

    List<Order> selectOrderList();

    int insertOrder(Order order);

    int updateOrder(Order order);
}
